In racing games, a human player may race a car (user-controlled car) against other cars that are controlled by computer-implemented artificial intelligence (computer-controlled AI cars). The computer controls the cars according to predetermined rules, parameters and scenarios. In a local, single player gaming scenario, the goal of the human player is typically to beat the computer-controlled AI cars during the racing and set record times for the racing, but the goal can instead be defined in some other way, e.g., passing the most cars, having the fastest lap on a course, reaching the highest top speed, exhibiting the most drifting ability, etc. In a different gaming scenario, a human player may play car racing games not only against computer-controlled AI cars, but also against other user-controlled cars that are locally or remotely controlled by other human players. This is called multi-player racing and may dramatically increase the player's interest as it provides more realistic competition.
The goal for game designers to design a great racing game is to offer a human player a challenging and enjoyable experience against other (local or remote, online) human players as well as the computer-controlled AI cars. To achieve this goal, the designers try to provide the best user experience to the human player, which includes not only having the computer-controlled AI cars entertain and challenge the human player, but also maintaining a smooth racing experience at the same time.
In some car racing simulation games, collisions at the “first turn” of a race course present challenges to maintain a smooth racing experience for the human player. The first turn is an example of a bottleneck (choke point) at which “too many” cars should organize themselves to flow through a section that is “too narrow” to accommodate the cars in their current configuration. The first turn usually follows a start condition in which cars are arranged in a defined starting configuration (e.g., 2 cars across, row after row; or 3 cars across, row after row), and the cars are too closely spaced together to pass through the bottleneck at full speed or speeds approaching full speed. To navigate the first turn without collisions, cars are somehow reorganized into a configuration in which the cars travel at realistic speeds and patterns going into the first turn.
Handling first turn behavior for computer-controlled AI cars presents challenges in terms of accurately simulating human behavior in a computer-represented environment. A human player controlling a car may become irritated if involved in a collision during a racing game, especially a collision that the player did not cause. On the other hand, human players seek a realistic racing experience in which other players may exhibit aggressive and/or idiosyncratic behavior. Human players may become discouraged if the behavior of computer-controlled AI cars is too simplistic or passive to be considered realistic.
Some previous attempts to control the behavior of computer-controlled AI cars at the first turn of a race course have imposed simple rules to cause cars to organize in a “parade line” in an orderly fashion. While such an approach avoids collisions, the behavior of the computer-controlled AI cars is too orderly (ignoring the ad hoc nature of decisions by independent drivers) and cooperative (ignoring the advantages that real drivers would press to pass, move up, etc.) to be considered realistic.
Other previous attempts to control the behavior of computer-controlled AI cars at the first turn of a race course have imposed constraints on how cars with varying attributes are ordered at the start of a race. In particular, cars have been ordered in a starting configuration such that, due to different capabilities for acceleration at lower gears, the cars naturally separate from each other before the first turn. Although the behavior of individual computer-controlled AI cars may be more realistic in this approach, the constraint on ordering of cars by attributes is unrealistic. Moreover, for some race courses, the first turn may be too close to the starting line for the desired separation between cars to occur. And, in some racing scenarios, individual computer-controlled AI cars are constrained to have identical attributes.
Aside from the effects on player engagement, collisions at the first turn of a race course can strain computational resources of a gaming console, desktop computer, or other computer systems. Rendering crash details for cars involved in a collision, while rendering other details for the large number of cars at the start of a race, can force the computer system to decrease the level of detail in terms of graphical detail or frame rate, or if that is not done cause playback that is “glitchy” or “laggy.” As such, avoiding collisions at the first turn of a race course can reduce computational resources used for rendering at that stage and/or improve the quality of rendering.